#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "lcd.h"
#include "key.h"  
#include "sram.h"   
#include "malloc.h" 

#include "timer.h"
#include "touch.h" 
#include "lvgl.h"
//#include "lv_port_disp.h"
//#include "lv_port_indev.h"

#include "lv_port_disp_template.h"
#include "lv_port_indev_template.h"

//#include "gui_app.h"  //it is a user_file

#include "main_win.h"
 
//#include "lv_conf.h"


int main(void)
{        


	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//
	delay_init(168);  //
	uart_init(115200);		//
	printf("----sys start----\r\n");
	TIM3_Int_Init(999,83);	//定时器初始化(1ms中断),用于给lvgl提供1ms的心跳节拍

	LED_Init();					//
 	//LCD_Init();					//LCD
 	KEY_Init();					//

	
	//tp_dev.init();			//触摸屏初始化  -->lv_port_indev_init()调用
	
	lv_init();						//lvgl系统初始化
	lv_port_disp_init();	//lvgl显示接口初始化,放在lv_init()的后面
	lv_port_indev_init();	//lvgllvgl输入接口初始化,放在lv_init()的后面

	printf("lvgl start\r\n");
	
//	lv_obj_t *label = lv_label_create(lv_scr_act());
//	lv_obj_set_style_text_color(label, lv_palette_main(LV_PALETTE_INDIGO),
//	LV_STATE_DEFAULT);
//	lv_obj_set_style_bg_color(lv_scr_act(),lv_palette_main(LV_PALETTE_BLUE_GREY),
//	LV_STATE_DEFAULT);
//	lv_obj_set_style_text_font(label,&lv_font_montserrat_14, LV_STATE_DEFAULT);
//	lv_label_set_text(label,"Hello Alientek!!!");
//	lv_obj_set_pos(label,lv_pct(30),lv_pct(50));
	
	lv_win_start();//lvgl界面开始

 	while(1)
	{	
		tp_dev.scan(0);//触摸扫描
		lv_timer_handler();//LVGL事务处理
	}	   
}


